var Fe = 0;

function Qo(e) {
    return Zo(Yo(es(e)))
}
function Yo(e) {
    return ns(rs(ts(e), e.length * 8))
}
function Zo(e) {
    try {} catch (s) {
        Fe = 0
    }
    for (var t = Fe ? "0123456789ABCDEF" : "0123456789abcdef", n = "", r, o = 0; o < e.length; o++) r = e.charCodeAt(o),
        n += t.charAt(r >>> 4 & 15) + t.charAt(r & 15);
    return n
}
function es(e) {
    for (var t = "", n = -1, r, o; ++n < e.length;) r = e.charCodeAt(n), o = n + 1 < e.length ? e.charCodeAt(n + 1) : 0,
        55296 <= r && r <= 56319 && 56320 <= o && o <= 57343 && (r = 65536 + ((r & 1023) << 10) + (o & 1023), n++), r <=
        127 ? t += String.fromCharCode(r) : r <= 2047 ? t += String.fromCharCode(192 | r >>> 6 & 31, 128 | r & 63) : r <=
        65535 ? t += String.fromCharCode(224 | r >>> 12 & 15, 128 | r >>> 6 & 63, 128 | r & 63) : r <= 2097151 && (t +=
            String.fromCharCode(240 | r >>> 18 & 7, 128 | r >>> 12 & 63, 128 | r >>> 6 & 63, 128 | r & 63));
    return t
}
function ts(e) {
    for (var t = Array(e.length >> 2), n = 0; n < t.length; n++) t[n] = 0;
    for (var n = 0; n < e.length * 8; n += 8) t[n >> 5] |= (e.charCodeAt(n / 8) & 255) << n % 32;
    return t
}
function ns(e) {
    for (var t = "", n = 0; n < e.length * 32; n += 8) t += String.fromCharCode(e[n >> 5] >>> n % 32 & 255);
    return t
}
function rs(e, t) {
    e[t >> 5] |= 128 << t % 32, e[(t + 64 >>> 9 << 4) + 14] = t;
    for (var n = 1732584193, r = -271733879, o = -1732584194, s = 271733878, i = 0; i < e.length; i += 16) {
        var a = n,
            f = r,
            l = o,
            u = s;
        n = F(n, r, o, s, e[i + 0], 7, -680876936), s = F(s, n, r, o, e[i + 1], 12, -389564586), o = F(o, s, n, r, e[i +
                2], 17, 606105819), r = F(r, o, s, n, e[i + 3], 22, -1044525330), n = F(n, r, o, s, e[i + 4], 7, -
                176418897), s = F(s, n, r, o, e[i + 5], 12, 1200080426), o = F(o, s, n, r, e[i + 6], 17, -1473231341),
            r = F(r, o, s, n, e[i + 7], 22, -45705983), n = F(n, r, o, s, e[i + 8], 7, 1770035416), s = F(s, n, r, o, e[
                i + 9], 12, -1958414417), o = F(o, s, n, r, e[i + 10], 17, -42063), r = F(r, o, s, n, e[i + 11], 22, -
                1990404162), n = F(n, r, o, s, e[i + 12], 7, 1804603682), s = F(s, n, r, o, e[i + 13], 12, -40341101),
            o = F(o, s, n, r, e[i + 14], 17, -1502002290), r = F(r, o, s, n, e[i + 15], 22, 1236535329), n = I(n, r, o,
                s, e[i + 1], 5, -165796510), s = I(s, n, r, o, e[i + 6], 9, -1069501632), o = I(o, s, n, r, e[i + 11],
                14, 643717713), r = I(r, o, s, n, e[i + 0], 20, -373897302), n = I(n, r, o, s, e[i + 5], 5, -701558691),
            s = I(s, n, r, o, e[i + 10], 9, 38016083), o = I(o, s, n, r, e[i + 15], 14, -660478335), r = I(r, o, s, n,
                e[i + 4], 20, -405537848), n = I(n, r, o, s, e[i + 9], 5, 568446438), s = I(s, n, r, o, e[i + 14], 9, -
                1019803690), o = I(o, s, n, r, e[i + 3], 14, -187363961), r = I(r, o, s, n, e[i + 8], 20, 1163531501),
            n = I(n, r, o, s, e[i + 13], 5, -1444681467), s = I(s, n, r, o, e[i + 2], 9, -51403784), o = I(o, s, n, r,
                e[i + 7], 14, 1735328473), r = I(r, o, s, n, e[i + 12], 20, -1926607734), n = v(n, r, o, s, e[i + 5], 4,
                -378558), s = v(s, n, r, o, e[i + 8], 11, -2022574463), o = v(o, s, n, r, e[i + 11], 16, 1839030562), r =
            v(r, o, s, n, e[i + 14], 23, -35309556), n = v(n, r, o, s, e[i + 1], 4, -1530992060), s = v(s, n, r, o, e[i +
                4], 11, 1272893353), o = v(o, s, n, r, e[i + 7], 16, -155497632), r = v(r, o, s, n, e[i + 10], 23, -
                1094730640), n = v(n, r, o, s, e[i + 13], 4, 681279174), s = v(s, n, r, o, e[i + 0], 11, -358537222), o =
            v(o, s, n, r, e[i + 3], 16, -722521979), r = v(r, o, s, n, e[i + 6], 23, 76029189), n = v(n, r, o, s, e[i +
                9], 4, -640364487), s = v(s, n, r, o, e[i + 12], 11, -421815835), o = v(o, s, n, r, e[i + 15], 16,
                530742520), r = v(r, o, s, n, e[i + 2], 23, -995338651), n = j(n, r, o, s, e[i + 0], 6, -198630844), s =
            j(s, n, r, o, e[i + 7], 10, 1126891415), o = j(o, s, n, r, e[i + 14], 15, -1416354905), r = j(r, o, s, n, e[
                i + 5], 21, -57434055), n = j(n, r, o, s, e[i + 12], 6, 1700485571), s = j(s, n, r, o, e[i + 3], 10, -
                1894986606), o = j(o, s, n, r, e[i + 10], 15, -1051523), r = j(r, o, s, n, e[i + 1], 21, -2054922799),
            n = j(n, r, o, s, e[i + 8], 6, 1873313359), s = j(s, n, r, o, e[i + 15], 10, -30611744), o = j(o, s, n, r,
                e[i + 6], 15, -1560198380), r = j(r, o, s, n, e[i + 13], 21, 1309151649), n = j(n, r, o, s, e[i + 4], 6,
                -145523070), s = j(s, n, r, o, e[i + 11], 10, -1120210379), o = j(o, s, n, r, e[i + 2], 15, 718787259),
            r = j(r, o, s, n, e[i + 9], 21, -343485551), n = z(n, a), r = z(r, f), o = z(o, l), s = z(s, u)
    }
    return Array(n, r, o, s)
}
function Ae(e, t, n, r, o, s) {
    return z(os(z(z(t, e), z(r, s)), o), n)
}
function F(e, t, n, r, o, s, i) {
    return Ae(t & n | ~t & r, e, t, o, s, i)
}
function I(e, t, n, r, o, s, i) {
    return Ae(t & r | n & ~r, e, t, o, s, i)
}
function v(e, t, n, r, o, s, i) {
    return Ae(t ^ n ^ r, e, t, o, s, i)
}
function j(e, t, n, r, o, s, i) {
    return Ae(n ^ (t | ~r), e, t, o, s, i)
}
function z(e, t) {
    var n = (e & 65535) + (t & 65535),
        r = (e >> 16) + (t >> 16) + (n >> 16);
    return r << 16 | n & 65535
}
function os(e, t) {
    return e << t | e >>> 32 - t
}
function hn(e) {
    return Qo(e)
}

module.exports = hn;